12 関西 Debian 勉強会資料
関西 Debian 勉強会担当者 山下 尊也
2008 4 29
12 関西 Debian 勉強会 2008 4
1 Introduction
山下 尊也
関西 Debian 勉強会 Debian GNU/Linux のさまざまなトピック (新しいパッケジ、Debian 特有の機能の
組、Debian 界隈で起こった出来事、などなど)について話し合う会です
目的として次の三つを考えています
ML や掲示板ではなく、直接顔を合わせる事での情報交換の促進
定期的に集まれる場所
資料の作成
それでは、楽しい一時をお楽しみ下さい。
1
関西デビアン勉強会
目次
1 Introduction 1
2 最近の Debian 関係のイベント報告 3
3 Windows PC でも Debian を楽しもう 4
4 Debian GNU/kFreeBSD 10
5 chroot からはじめる sid 12
6 今後の予定 14
2
12 関西 Debian 勉強会 2008 4
2 最近のDebian関係のイベン
ト報告
山下 尊也
2.1 11 関西 Debian 勉強会
2008 3 22 日に「第 11 関西 Debian 勉強会」を行いました。合計 20 名の参加でした。
内容は、開発よりの分野が多く、特に GPG の講座については、GPG を作るきっかけになったようです
バグレポートから参加する Debian パッケージ開発 木下さん
Debian 開発者のコーナーの歩き方 大浦さん
GPG 最初の一歩 倉敷さん
3
12 関西 Debian 勉強会 2008 4
3 WindowsPCでもDebian
楽しもう
名村 知弘
3.1 はじめに
Windows 上でしか動かないソフトがあったり、会社の PC Windows だったりと、Windows を完全に手放す
とができない環境はまだまだ多いと思います。そんな Windows な環境にあっても、coLinux あれば Windows
起動しながらにして、お気軽に Debian を楽しむことができます
coLinux の設定から、Debian を楽しむまでの流れをご紹介します
3.1.1 coLinux とは何か?
coLinux(COoperative LINUX) とは、Windows 上で動作する Linux カーネルですcoLinux 上で Debian を動作
させる場合、coLinux パッチの当てられた専用 Linux カーネル上で Debian 動作することになります。Debian
Windows 上の 1 つのアプリケーションとして動作するため、Windows を使いながら必要になった時に Debian
起動し使用することができます
3.1.2 なぜ coLinux か?
Windows 上で Debian を使う環境としては、VMWare などの PC エミレータが考えられますが、PC エミュレー
タはオーバヘドやメモリ使用量が大きく全体的に動作が重くなてしましますcoLinux Windows アプリケー
ションとして Linux が起動するため、PC エミュレータに比べ動作が軽いのが特徴となっています。ただし、ディス
プレイデバイスやサウンドデバイスが実装されていないため、単体では音のでない CUI 環境となります
*
1
3.2 coLinux インストール
coLinux Debian を使用するには、
1. coLinux のインストール
2. network の設定
3. coLinux の設定
3 ステップを実行します
以下では、Windows Vista
*
2
での、TAP-Win32 を使用したインストールのステップを簡単に説明します
*
1
別途 VNC X サーバ、サウンドサーバを使用することで、これら機能を使用することができます。
*
2
WindowsXP でも同様の手順で作業できると思います
4
3.2.1 coLinux のインストール
coLinux の配布サイト
*
3
から、coLinux のインストーラ
*
4
をダウンロードします
ダウンロードしたインストーラを起動し、デフォルトのままインストールを進めていくと、図 1 のような、イン
トールモジュールを選択する画面が表示されますここではネットワークアダプタとしてTAP-Win32を使用しま
すので、SLiRPWinPcap」のチェックを外してください。
1 インストールコンポーネントの選択
引き続きデフォルトのままインストールを進めていくと、図 2 ような root ファイルシステムを選択する画面
表示されるので、間違えずに「Debian」を選択してください。
2 ルートファイルシステム選択
*
3
http://sourceforge.net/projects/colinux/files
*
4
執筆時では kernel2.6.22 をベースとした coLinux0.7.2 が最新安定版となっています
5
あとは再びデフォルトのままインストールを進めると、インストール完了です。ここで、「コントロールパネル」-
「ネットワーク接続」を表示し、「ローカルエリア接続 2」が作成されていると思いますので、右クリックし名前の
更を行い、TAP」に変更しておきます
「ローカル エリア接続」 2 つ以上ある場合はプロパティを表示し、「接続の方法」がTAP-Win32 Adapter V8
(coLinux)」となっているものの名前を変更します
3.2.2 network 設定
coLinux 使用するネットワーク接続は、TAP-Win32(想ネットワークアダプ) 使用しま。この仮想ネッ
トワークアダプタは物理的に LAN などのネットワークに接続していないため、ホスト PC Real NIC 通じて物
理的なネットワークに接続する必要がありま。物理的なネットワークに接続する方法として、ここでは以下の 2
の方法をご紹介します
Bridge 接続を用いた方法
3 Bridge 接続を使用したネットワーク構成
Bridge 接続では図 3 のように、TAP-Win32 を通じて coLinux Real NIC と同じサブネットに接続されるため、
他の PC らも coLinux にアクセスすることができますReal NIC ネットワーク環境 (固定 IP DHCP など)
合わcoLinux のネットク設行うあり。長とし、ネットワー他の PC
coLinux に直接アクセスすることができま。短所としては、ネットワークに接続されていない環境では、Windows
からも coLinux にアクセスすることができません。
設定は以下のようになります
1.「コントロールパネル」-「ネットワーク接続」を開きます。
2.「ローカル エリア接続」と「TAP」を選択し、右クリックから「ブリッジ接続」を選択します
3.「ネットワークブリッジ」という接続設定が表示されたら完了です。
ネットワーク接続の共有を用いた方法
ネット 4 TAP-Win32 Real NIC ネット、ホ
OS NAT TAP-Win32 IP は「192.168.0.1」固 coL-
inux は「192.168.0.1/24」の IP Real NIC ネット
192.168.0.0/24」の場合、IP アドレスがバッティングしてしまうため、使用することができません。長所としては、
ネットワークに接続されていない環境でもWindows から常 coLinux に対して接続することができます。短所と
しては、ネットワーク上の他の PC からは coLinux にアクセスすることができません。
設定は以下のようになります
6
4 ネットワーク接続の共有を使用したネットワーク構成
1.「コントロールパネル」-「ネットワーク接続」を開きます。
2.「ローカル エリア接続」を右クリックし、プロパティを表示します。
3.共有タブ」を開き、ネットワークのほかのユーザーに、このコンピュータのインターネット接続をとおして
の接続を許可する」にチェックを入れます
4.「ホーム ネットワーク接続」は「TAP」を選択し、OK」ボタンで閉じたら完了です
5 ネットワーク接続の共有の設定
7
3.3 coLinux の設定
coLinux を起動するまでには、次の 3 つのステップが必要です
Debian のルートイメージの準備
swap ディスクの準備
設定ファイルの作成
coLinux の起動
3.3.1 Debian のルートイメージの準備
coLinux のイ時にされ Debian トイファイが、coLinux イン
ディレクトリに「Debian-4.0r0-etch.ext3.1gb.bz2」というファイル名で作成されていますので、ファイルを展開
*
5
ます
と「Debian-4.0r0-etch.ext3.1gb」とファイ、分に「fs-root-
etch.img」などと名前を変更しておきます
3.3.2 swap ディスクの準備
coLinux のインストールでは、swap ファイルは用意されていないため、各自で用意する必要があります。ここでは
既に作成された swap ファイルをダウンロードできるサイトを利用してダウンロードします
http://gniarf.nerim.net/colinux/swap/ にアクセスし、swap 512Mb.bz2」をダウンロードします
swap 512Mb.bz2」を展開すると、swap 512Mb」というファイルが生成されるため、分かりやすいように「fs-
swap-512.img」などと名前を変更しておきます
3.3.3 設定ファイルの作成
これで必要なファイルは全てそろったので、coLinux Debian を起動するための設定を行います
設定ファイルのフォーマットには、xml を使用した方法と、独自の conf ファイルの 2 種類がありますが、ここでは
conf ファイルを使用した方法を記載します
coLinux インストールディレクトリに「etch.conf」というファイルを作成し、以下の内容を記載します
kernel=vmlinux
initrd=initrd.gz
mem=512
#c:\coLinux」は適宜 coLinux のインストールディレクトリで読み替えてください。
cobd0="c:\coLinux\fs-root-etch.img"
cobd1="c:\coLinux\fs-swap-512.img"
eth1=tuntap
root=/dev/cobd0
ro
coLinux をインストールしたディレクトリに、example.confというファイルがありますので必要であればこの
ファイルを参考に設定を変更してください。
3.3.4 coLinux の起動
coLinux には 2 通りの起動方法が用意されています
コンソールアプリケーションとして起動
サービスアプリケーションとして起動
以下にそれぞれの起動方法を記載します
*
5
展開には、bz2 の展開ができる Lhaca などのツールが別途必要になります
8
コンソールアプリケーションとして起動する方法
coLinux のインストールディレクトリに、colinux-daemon.exeのショートカットを作成し、プロパティから「リン
ク先」の末尾に「-t nt @etch.conf」を追加します
6 coLinux 起動ショートカット
このショートカットを起動すると、coLinux がコンソールアプリケーションとして起動します。コンソールアプ
ケーションとして起動しているため、コンソールを終了すると当然 coLinux も終了してしまいます。
うっかり終了してしまうことを防ぐためcoLinux サービスアプリケーションとして起動する方法が用意され
います
サービスアプリケーションとして起動する方法
coLinux ディレ、以
c:\coLinux」は適宜 coLinux のインストールディレクトリで読み替えてください。
colinux-daemon.exe "@c:\coLinux\etch.conf" --install-service
coLinux 。ファイ
Cooperative Linux」が登録されていることを確認してください。
%SystemRoot%\system32\services.msc
「スタートアップの種類」を「手動」に設定し、以下のコマンドでそれぞれ起動、停止することができます
net start "Cooperative Linux"
net stop "Cooperative Linux"
9
12 関西 Debian 勉強会 2008 4
4 Debian GNU/kFreeBSD
大浦
4.1 Debian GNU/kFreeBSD とは
Debian は、カーネルとして Linux だけをターゲットとしているのではない。Debian GNU/kFreeBSD は、カ
ネルとして FreeBSD のカーネルを利用し、その上に GNU C library Debian のパッケージセットを移植した
のである。(カーネルだけを使っているので、kFreeBSD”)
正式なリリースはまだだが、今回はそのインストール方法を紹介する。
4.2 Debian GNU/kFreeBSD のインストール
QEMU 上の仮想マシンにインストールする。
1. http://glibc-bsd.alioth.debian.org/install-cd/ よりイントー CD ウンード。現点で
の最新版は、20080218 の日付のもの。debian-20080218-kfreebsd-i386-install.iso
インストーラは、FreeBSD のインストーラを改造したものである。他のアーキテクチャで使われている
Debian Installer は移植されていない。
2. qemu 用のイメージの作成
$ qemu-img create -f qcow2 kfreebsd.img 10G
3. qemu 起動
$ qemu -hda kfreebsd.img \
-cdrom debian-20080218-kfreebsd-i386-install.iso -m 512 -boot d
4. FreeBSD のインストーラが起動したら Express を選択。
5. ハードディスクの設定。
FDISK Partition Editor slice の設定。Create Slice でハードディスク全体を選択。
Boot Manager の設定GRUB も使えるようだが、手動で設定する必要があるのでFreeBSD Boot
Magager を使う
FreeBSD Disklabel EditorPartition の設定。ひとまず Swap Partition / を作成。
6. ベースシステムのインストール
Choose Distribution Minimal を選択。
Choose Installation Media CD/DVD を選択。
CD から base system のインストールが始まる。
Alt-F3 でコンソールに移る。
tzdata の設定。
10
popularity-contest の設定。
7. インストールの終了と再起動。
User Configuration Requested No を選択。
sysinstall Main menu に戻ったら Exit Install でインストーラを終了。
再起動。
8. 再起動後の設定
ユーザとしては、root のみが作成されている。パスワードなし。
ネットワークの設定はなされていないDHCP 環境の場合、dhclient 実行するとネットワークにつな
がる。
ftp.debian-ports.org のアーカイブキーを取得。
$ wget -O - http://ftp.debian-ports.org/archive/archive_2008.key \
| apt-key add -
4.3 問題点と今後
インストーラが行う設定が必要最低限のみ。一般ユーザの作成やネットワークの設定は自分で行う必要がある。
基本的なパッケージでも移植できていないパッケージやきちんと動作しないパッケージが結構多い。(Debian
GNU/Linux あることを前提して作られたパッケージがGNU/kFreeBSD に持ってくるとビルドできない
ことがある。)
console-toolssysklogdemacs22 など
現時点で、Architecuture: any のパッケージの 80% ほどしかビルドできていない。
http://buildd.debian-ports.org/stats/
ハックのしがいあり
http://glibc-bsd.alioth.debian.org/TODO
http://glibc-bsd.alioth.debian.org/porting/PORTING
4.4 関連リンク
http://www.debian.org/ports/kfreebsd-gnu/
http://wiki.debian.org/Debian_GNU/kFreeBSD
http://glibc-bsd.alioth.debian.org/doc/
Installing Debian GNU/kFreeBSD
http://tokyodebian.alioth.debian.org/html/debianmeetingresume200708se7.html
Debian GNU/kFreeBSD のインストール」( 31 回東京エリア Debian 勉強会資料)
11
12 関西 Debian 勉強会 2008 4
5 chrootからはじめる sid
山下 尊也
sid って危険って言うけど、本当に危険なんですか?とか、unstableって名前が怖かったりとか、はたまた、本日締
切りの原稿とかあるのに、新しいバージョンなものを触ってみたいとか、いろいろあると思います
今回は、初めて sid の環境を触ろうと考えていらっしゃる方にお勧めなものを紹介します
debootstrap を用いれば、chroot した Debian 環境を安易に構築する事が可能です
今回は、/home/tommy/chroot/sid の下に chroot 環境な sid を構築します。
$ sudo mkdir -p /home/tommy/chroot/sid
$ sudo debootstrap sid /home/tommy/chroot/sid http://ftp.jp.debian.org/debian
I: Retrieving Release
I: Retrieving Packages
I: Validating Packages
I: Resolving dependencies of required packages...
I: Resolving dependencies of base packages...
I: Configuring klogd...
I: Configuring tasksel-data...
I: Configuring tasksel...
I: Base system installed successfully.
さっそく、作った環境にログインしてみましょう
$ sudo chroot /home/tommy/chroot/sid /bin/bash
root@hoge:/#
これでログイン出来ました。
基本的なパッケージしか入っていないため、/etc/apt/souces.list を更新し、自分に必要なパッケージなどをいれま
しょう
root@hoge:/# vi /etc/apt/sources.list
/home などを共有したい場合は、以下のように親の/etc/fstab に書き加えます
$ sudo vi /etc/fstab
/home /home/tommy/chroot/sid/home none bind 0 0
/tmp /home/tommy/chroot/sid/tmp none bind 0 0
proc-chroot /home/tommy/chroot/sid/proc proc defaults 0 0
devpts-chroot /home/tommy/chroot/sid/dev/pts devpts defaults 0 0
ユーザ情報をコピーしましょう
$ sudo cp /etc/passwd /home/tommy/chroot/sid/etc/
$ sudo sed ’s/\([^:]*\):[^:]*:/\1:*:/’ /etc/shadow | sudo tee /home/tommy/chroot/sid/etc/shadow
$ sudo cp /etc/group /home/tommy/chroot/sid/etc/
$ sudo cp /etc/hosts /home/tommy/chroot/sid/etc/
chroot は、管理者権限がなければ使う事が出来ません。dchroot は、chroot の環境のコマンドを一般ユーザの権限
で実行する事を可能にします。アプリケーションを用いたい場合などは、一般ユーザ権限で実行したい場合が多い
思います
12
$ echo ‘‘mychroot /home/tommy/chroot/sid’’ | sudo tee /etc/dchroot.conf
$ dchroot -c mychroot (ログイン)
現在、experimental 環境に iceweasel のバージョン 3 ベータがきています。これを実行する事を考えてみましょ
。まずexperimental な環境をインストール出来るように/etc/apt/sources.list を編集します
$ dchroot -c mychroot
$ su -
root@hoge:/# vi /etc/apt/sources.list
deb http://cdn.debian.or.jp/debian/ sid main contrib non-free
deb http://cdn.debian.or.jp/debian/ experimental main contrib non-free
そして、experimental Iceweasel をインストールします
root@hoge:/# aptitude install iceweasel/experimental
dchroot は、chroot 環境以下に対して、一般ユーザの権限でコマンドを用いる事も可能です
$ dchroot -c mychroot -d iceweasel
これで、chroot 環境内に構築しました experimental Iceweasel を使う事が出来ます
chroot は現在動いているカーネル上に仮 OS を作成することから、オーバーヘッドが比較的小さい事が大きな利
点であると思います
すでに安定版 Debian 使っているのであれば、chroot 用いれば、簡単不安定版 Debian アプリケ
ションを利用する事が出きるので、ちょっと触れてみたい方にはお勧めな方法の一つだと思うので是非試してみて下
さい。
5.1 参考文献
https://wiki.ubuntulinux.jp/UbuntuPackagingGuideJa/appendix-chroot
The Ubuntu Packaging Guide 日本語版/chroot 環境
Debian 辞典 著者 武藤健志
http://kmuto.jp/d/index.cgi/debian/debootstrap.htm
KeN’s GNU/Linux Diary Etch/Sid の上に Sarge 環境を作る方法
13
12 関西 Debian 勉強会 2008 4
6 今後の予定
山下 尊也
6.1 次回
次回は、2008 5 18 日に福島区民センター
*
6
にて行なう予定です
6.2 OSC 2008 Kansai について
今年の OSC Kansai の日程が決まりました。7 18,19 日(金・土)に行なわれます
関西 Debian 勉強会として決まっているのは、以下の通りです
18 日に参加出来る方が多ければ、18 ,19 日両日参加する
セッション時間は、2 時間頂き、通常とほぼ同様の勉強会を開催する
ブース担当と、セッション担当に分ける
6.3 KDR のおしらせ
関西 Debian 勉強会の有志で関西 Debian 勉強会とは独立した形で、週に一度、読書会 (KDR) を開いています
しくは KDR 公開用ページ
*
7
をご覧下さい。
*
6
http://www.city.osaka.jp/shimin/shisetu/01/fukushima.html
*
7
http://qwik.jp/kdrweb/
14
関西デビアン勉強会
Debian 勉強会資料
2008 4 29 初版第 1 刷発行
関西 Debian 勉強会 (編集・印刷・発行)
15